package com.naiterui.ehp.bs.doctor.utils;

import org.apache.commons.lang3.StringUtils;

import com.naiterui.ehp.bp.domain.DrPatientRemarkname;
import com.naiterui.ehp.bp.domain.Patient;

/**
 * 患者姓名、性别等信息操作工具类
 *
 * @version 2017年6月20日 by wangchuan
 * @Description
 */
public class PatientUtil {
    /**
     * 患者姓名通用优先级。remarkInfo为null时，不取备注名
     *
     * @param patient    患者基本信息
     * @param remarkInfo 备注信息
     *
     * @return
     *
     * @Description 备注名>姓名>昵称
     * @History 2017年6月19日 by wangchuan
     * @since 2.8.0
     */
    public static String getPatientName(Patient patient, DrPatientRemarkname remarkInfo) {
        if (patient == null) {
            return null;
        }
        String name = StringUtils.isNotBlank(patient.getName()) ? patient.getName() : patient.getNickName();
        String patientName = remarkInfo != null && StringUtils.isNotBlank(remarkInfo.getRemarkName()) ? remarkInfo.getRemarkName() : name;
        return patientName;
    }

    /**
     * 根据性别编号获取性别描述
     *
     * @param gender
     *
     * @return
     *
     * @Author guoyongxiang
     * @Date 2017年2月16日
     * @since 1.0.0
     */
    public static String getGenderName(Integer gender) {
        if (gender == null) {
            return "未知";
        }
        String genderStr;
        switch (gender) {
            case Patient.GENDER_FEMALE:
                genderStr = "女";
                break;
            case Patient.GENDER_MALE:
                genderStr = "男";
                break;
            default:
                genderStr = "未知";
                break;
        }
        return genderStr;
    }

}
